package com.cg.design.graphicdesignpattern.state;

/**
 * 表示“紧急“的状态类，实现了State接口
 *
 * @program: LeetCode->UrgentState
 * @description: 表示“紧急“的状态类，实现了State接口
 * @author: cg
 * @create: 2022-04-03 15:41
 **/
public class UrgentState implements State {
    private static final UrgentState SINGLETON = new UrgentState();

    private UrgentState() {
    }

    public static UrgentState getInstance() {
        return SINGLETON;
    }

    @Override
    public void doClock(Context context, int hour) {
        // 在设置时间处理中什么也不做
    }

    @Override
    public void doUes(Context context) {
        context.callSecurityCenter("紧急：紧急时使用金库");
    }

    @Override
    public void doAlarm(Context context) {
        context.callSecurityCenter("按下警铃(紧急时)");
    }

    @Override
    public void doPhone(Context context) {
        context.callSecurityCenter("正常通话(紧急时)");
    }

    @Override
    public String toString() {
        return "[紧急时]";
    }
}
